package de.tv.weatherox;

import com.google.gson.annotations.Expose;

import javax.persistence.*;
import java.util.*;
import java.util.logging.Logger;

/**
 * Created by IntelliJ IDEA.
 * User: Thomas
 * Date: 14.05.11
 * Time: 07:58
 * To change this template use File | Settings | File Templates.
 */
@Entity(name = "Forecast")
public class Forecast {
    public static final Logger LOGGER = Logger.getLogger(Forecast.class.getName());

    public static final String ID = "id";
    public static final String DATE = "date";
    public static final String DATE_AS_STRING = "dateAsString";
    public static final String CLOUDINESS = "cloudiness";
    public static final String TEMPERATURE_MAX = "temperatureMax";
    public static final String TEMPERATURE_MIN = "temperatureMin";
    public static final String DEWPOINT = "dewpoint";
    public static final String PRECIPITATION = "precipitation";
    public static final String WIND = "wind";
    public static final String DAWN = "dawn";
    public static final String DUSK = "dusk";
    public static final String MOON = "moon";
    public static final String CREATED = "created";

    @Id
    private Long id;
    @Expose
    private Date date;
    @Transient
    private String dateAsString;
    @Expose
    private double cloudiness;
    @Expose
    private int temperatureMax;
    @Expose
    private int temperatureMin;
    @Expose
    private int dewpoint;
    @Expose
    private int precipitation;
    @Expose
    private String windDirection;
    @Expose
    private int windForce;
    @Expose
    private String dawn;
    @Expose
    private String dusk;
    @Expose
    private MoonPhase moonPhase;
    private Date created;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Date getDate() {
        return date;
    }

    public void setDate(Date date) {
        this.date = date;
    }

    public String getDateAsString() {
        return dateAsString;
    }

    public void setDateAsString(String dateAsString) {
        this.dateAsString = dateAsString;
    }

    public double getCloudiness() {
        return cloudiness;
    }

    public void setCloudiness(double cloudiness) {
        this.cloudiness = cloudiness;
    }

    public int getTemperatureMax() {
        return temperatureMax;
    }

    public void setTemperatureMax(int temperatureMax) {
        this.temperatureMax = temperatureMax;
    }

    public int getTemperatureMin() {
        return temperatureMin;
    }

    public void setTemperatureMin(int temperatureMin) {
        this.temperatureMin = temperatureMin;
    }

    public int getDewpoint() {
        return dewpoint;
    }

    public void setDewpoint(int dewpoint) {
        this.dewpoint = dewpoint;
    }

    public int getPrecipitation() {
        return precipitation;
    }

    public void setPrecipitation(int precipitation) {
        this.precipitation = precipitation;
    }

    public String getWindDirection() {
        return windDirection;
    }

    public void setWindDirection(String windDirection) {
        this.windDirection = windDirection;
    }

    public int getWindForce() {
        return windForce;
    }

    public void setWindForce(int windForce) {
        this.windForce = windForce;
    }

    public String getDawn() {
        return dawn;
    }

    public void setDawn(String dawn) {
        this.dawn = dawn;
    }

    public String getDusk() {
        return dusk;
    }

    public void setDusk(String dusk) {
        this.dusk = dusk;
    }

    public MoonPhase getMoon() {
        return moonPhase;
    }

    public void setMoon(MoonPhase moon) {
        this.moonPhase = moon;
    }

    public Date getCreated() {
        return created;
    }

    public void setCreated(Date created) {
        this.created = created;
    }
}
